package com.qfjy.controller.example2;

import com.qfjy.mq.QueueTask;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @ClassName WeatherController
 * @Description TODO
 * @Author guoweixin
 * @Date 2022/4/1
 * @Version 1.0
 */
@Controller
@Slf4j
@RequestMapping("weather")
public class WeatherController {
    /**消息队列*/
    @Autowired
    private AmqpTemplate amqpTemplate;

    /**
     *  TODO 气象局 数据查询最新的天气预报
     * @return
     */
    @GetMapping("getWeatherInfo")
    @ResponseBody
    public String getWeatherInfo(@RequestParam("city") String cityMsg){

        //查询气象局的业务逻辑层和数据库
        log.info("气象局得到最新天气预报："+cityMsg+" 晴天 10-20");

        //rabbit 消息队列分发

        /**
         String exchange,  定义交换机名称（如果未指定，默认direct）
         String routingKey, 路由值
         Object object  传输数据对象（底层二进制方式传输）
         */
        amqpTemplate.convertAndSend(QueueTask.EXCHANGE_NAME_WEATHER,null,cityMsg);

        return "气象局最新天气预报生成成功--》"+cityMsg;
    }

}
